2012年02月26日
川俣晶の縁側ソフトウェア技術雑記 total 3628 count

AzureではWeb.configの<filter type="" />が鬼門なのか?

Written By: 川俣 晶連絡先

 良く分からないのでメモ。

 Windows AzureのWebRoleプロジェクトは以下のようなコードをWeb.config内に生成します。

  <system.diagnostics>

    <trace>

      <listeners>

        <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener,

 Microsoft.WindowsAzure.Diagnostics,

 Version=1.0.0.0,

 Culture=neutral,

 PublicKeyToken=31bf3856ad364e35"

 name="AzureDiagnostics">

          <filter type="" />

        </add>

      </listeners>

    </trace>

  </system.diagnostics>

 このとき、<filter type="" />がくせ者として機能するケースがあるようです。一見、「何も指定しない」ように見え、この設定があってもトレースログの出力ができている環境もあるので見逃していました。

 しかし、コードの書き方次第で、これが致命的に動作を阻止してしまうケースがあるようです。ログ出力のテストプログラムでは、<filter type="" />をコメントアウトしただけでトレースログをTableに転送するようになったものがありました。

 全般的にまだ動作はよく理解できていませんが、とりあえずメモ。

感想 §

 Azureのログには謎が多く、使ったことがない範囲に踏み込むとすぐ道に迷いそうです。別件のログ問題の検証中にこの問題に遭遇し、三重ぐらい問題がネストしてしまいましたよ。というわけで、まだまだクリアされていない問題があります。